package br.com.conciliador.consulta.vo;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.hibernate.annotations.Proxy;
import org.hibernate.annotations.Type;

import br.com.conciliador.consulta.vo.filtro.FiltroConsultaDivergenciaVo;
import br.com.r2.util.tipodado.Data;
import br.com.r2.util.tipodado.Inteiro;
import br.com.r2.util.tipodado.InteiroLongo;
import br.com.r2.util.tipodado.Moeda;
import br.com.r2.util.tipodado.Texto;

@Entity
@Table(name = "VWDIVERGENCIA")
@Proxy(lazy = true)
public class ConsultaDivergenciaVo implements Serializable
{

   /**
    * 
    */
   private static final long serialVersionUID = -4048249793180853448L;

   @Id
   @Column(name = "ID")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo codigo;

   @Column(name = "codigoDataVenda")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo codigoDataVenda;
   
   @Column(name = "DATA_VENDA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.DataUT")
   private Data dataVenda;

   @Column(name = "LOJA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo loja;

   @Column(name = "NOME_LOJA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto nomeLoja;

   @Column(name = "BANDEIRA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo bandeira;

   @Column(name = "NOME_BANDEIRA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto nomeBandeira;

   @Column(name = "PRODUTO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo produto;

   @Column(name = "NOME_PRODUTO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto nomeProduto;

   @Column(name = "PLANO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroUT")
   private Inteiro plano;

   @Column(name = "VALOR_BRUTO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.MoedaUT")
   private Moeda valorBruto;

   @Column(name = "NSU")
   @Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
   private InteiroLongo nsu;

   @Column(name = "AUTORIZACAO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto autorizacao;

   @Column(name = "CAIXA")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto caixa;

   @Column(name = "ESTABELECIMENTO")
   @Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
   private Texto estabelecimento;

   @Transient
   private FiltroConsultaDivergenciaVo filtro;

   public InteiroLongo getCodigo()
   {
      return codigo;
   }

   public void setCodigo(InteiroLongo codigo)
   {
      this.codigo = codigo;
   }

   public Data getDataVenda()
   {
      return dataVenda;
   }

   public void setDataVenda(Data dataVenda)
   {
      this.dataVenda = dataVenda;
   }

   public InteiroLongo getLoja()
   {
      return loja;
   }

   public void setLoja(InteiroLongo loja)
   {
      this.loja = loja;
   }

   public Texto getNomeLoja()
   {
      return nomeLoja;
   }

   public void setNomeLoja(Texto nomeLoja)
   {
      this.nomeLoja = nomeLoja;
   }

   public InteiroLongo getBandeira()
   {
      return bandeira;
   }

   public void setBandeira(InteiroLongo bandeira)
   {
      this.bandeira = bandeira;
   }

   public Texto getNomeBandeira()
   {
      return nomeBandeira;
   }

   public void setNomeBandeira(Texto nomeBandeira)
   {
      this.nomeBandeira = nomeBandeira;
   }

   public InteiroLongo getProduto()
   {
      return produto;
   }

   public void setProduto(InteiroLongo produto)
   {
      this.produto = produto;
   }

   public Texto getNomeProduto()
   {
      return nomeProduto;
   }

   public void setNomeProduto(Texto nomeProduto)
   {
      this.nomeProduto = nomeProduto;
   }

   public Inteiro getPlano()
   {
      return plano;
   }

   public void setPlano(Inteiro plano)
   {
      this.plano = plano;
   }

   public Moeda getValorBruto()
   {
      return valorBruto;
   }

   public void setValorBruto(Moeda valorBruto)
   {
      this.valorBruto = valorBruto;
   }

   public InteiroLongo getNsu()
   {
      return nsu;
   }

   public void setNsu(InteiroLongo nsu)
   {
      this.nsu = nsu;
   }

   public Texto getAutorizacao()
   {
      return autorizacao;
   }

   public void setAutorizacao(Texto autorizacao)
   {
      this.autorizacao = autorizacao;
   }

   public Texto getCaixa()
   {
      return caixa;
   }

   public void setCaixa(Texto caixa)
   {
      this.caixa = caixa;
   }

   public FiltroConsultaDivergenciaVo getFiltro()
   {
      return filtro;
   }

   public void setFiltro(FiltroConsultaDivergenciaVo filtro)
   {
      this.filtro = filtro;
   }

   public InteiroLongo getCodigoDataVenda()
   {
      return codigoDataVenda;
   }

   public void setCodigoDataVenda(InteiroLongo codigoDataVenda)
   {
      this.codigoDataVenda = codigoDataVenda;
   }

   public Texto getEstabelecimento()
   {
      return estabelecimento;
   }

   public void setEstabelecimento(Texto estabelecimento)
   {
      this.estabelecimento = estabelecimento;
   }

}
